# -*- coding: utf-8 -*-

from Signal import *


class SigTests(Signal):
    def __init__(self, accountId, buddies):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.buddies = buddies

    @staticmethod
    def javaClassName():
        return "apps.im.SigTests"


class SetGroup(Signal):
    def __init__(self, accountId,  contactId, group):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.group = group

    @staticmethod
    def javaClassName():
        return "apps.im.SetGroup"


class SetConversation(Signal):
    def __init__(self, accountId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.SetConversation"


class StartConversation(Signal):
    def __init__(self, accountId, conversationId, contacts):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.conversationId = conversationId
        self.contacts = contacts

    @staticmethod
    def javaClassName():
        return "apps.im.conversation.StartConversation"


class LogConversation(Signal):
    def __init__(self, accountId, conversationId, contactId, message):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.conversationId = conversationId
        self.contactId = contactId
        self.message = message

    @staticmethod
    def javaClassName():
        return "apps.im.conversation.LogConversation"


class EnterConversation(Signal):
    def __init__(self, accountId, conversationId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.conversationId = conversationId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.conversation.EnterConversation"


class LeaveConversation(Signal):
    def __init__(self, accountId, conversationId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.conversationId = conversationId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.conversation.LeaveConversation"


class SetStatus(Signal):
    def __init__(self, accountId,  contactId,  isOnline):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.isOnline = isOnline

    @staticmethod
    def javaClassName():
        return "apps.im.SetStatus"


class SetBuddyListStatus(Signal):
    def __init__(self, accountId, onlineContacts):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.onlineContacts = onlineContacts

    @staticmethod
    def javaClassName():
        return "apps.im.SetBuddyListStatus"


class SetAvatar(Signal):
    def __init__(self, accountId,  contactId,  imagePath):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.imagePath = imagePath

    @staticmethod
    def javaClassName():
        return "apps.im.SetAvatar"

class FindAccount(Signal):
    def __init__(self, accountId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId

    @staticmethod
    def javaClassName():
        return "apps.im.FindAccount"

class NewAccount(Signal):
    def __init__(self, accountId, buddies):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.buddies = buddies

    @staticmethod
    def javaClassName():
        return "apps.im.NewAccount"

class AccountSignal(Signal):
    def __init__(self, accountBlocked, accountExists):
        Signal.__init__(self, -1, -1, None)
        self.accountBlocked = accountBlocked
        self.accountExists = accountExists

    @staticmethod
    def javaClassName():
        return "apps.im.AccountSignal"


class SetNickName(Signal):
    def __init__(self, accountId, contactId, nickName):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.nickName = nickName

    @staticmethod
    def javaClassName():
        return "apps.im.SetNickName"


class SetPersonalMessage(Signal):
    def __init__(self, accountId, contactId, personalMessage):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.personalMessage = personalMessage

    @staticmethod
    def javaClassName():
        return "apps.im.SetPersonalMessage"


class IsAccountAllowed(Signal):
    def __init__(self, accountId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId

    @staticmethod
    def javaClassName():
        return "apps.im.IsAccountAllowed"


class IsContactAllowed(Signal):
    def __init__(self, accountId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.IsContactAllowed"


class AddContact(Signal):
    def __init__(self, accountId, contactId, group):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.group = group

    @staticmethod
    def javaClassName():
        return "apps.im.AddContact"


class SetContactRemove(Signal):
    def __init__(self, accountId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.SetContactRemove"


class SetFileTransfer(Signal):
    def __init__(self, accountId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.SetFileTransfer"


class IsFileTransferAllowed(Signal):
    def __init__(self, accountId, contactId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId

    @staticmethod
    def javaClassName():
        return "apps.im.IsFileTransferAllowed"


class LogFileTransfer(Signal):
    def __init__(self, accountId, contactId, conversationId, path):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.contactId = contactId
        self.conversationId = conversationId
        self.path = path

    @staticmethod
    def javaClassName():
        return "apps.im.conversation.LogFileTransfer"


class LogMessage(Signal):
    def __init__(self, accountId, accountIP,  contactId, contactIP,  message, isSender):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId
        self.accountIP = accountIP
        self.contactId = contactId
        self.contactIP = contactIP
        self.message = message
        self.isSender = isSender

    @staticmethod
    def javaClassName():
        return "apps.im.LogMessage"


class Disconnect(Signal):
    def __init__(self, accountId):
        Signal.__init__(self, -1, -1, None)
        self.accountId = accountId

    @staticmethod
    def javaClassName():
        return "apps.im.Disconnect"

